/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package productos.ejbs;

import entities.Producto;
import entities.ProductoTalla;
import entities.Talla;
import entities.TallaSerieTallaje;
import facades.ProductoTallaFacade;
import java.util.ArrayList;
import javax.ejb.Stateless;
import javax.inject.Named;
import javax.enterprise.event.Event;
import javax.enterprise.event.Observes;
import javax.inject.Inject;
import qualifiers.EventoEntidadCreada;

/**
 *
 * @author damfercer
 */
@Named(value = "productoTallaBean")
@Stateless
public class ProductoTallaBean {
    @Inject
    private ProductoTallaFacade productoTallaFacade;
    @Inject
    @EventoEntidadCreada
    Event<ProductoTalla> eventoNuevoProductoTalla;
    /**
     * Creates a new instance of ProductoTallaBean
     */
    public ProductoTallaBean() {
    }
    
    public void onNuevoProducto(@Observes @EventoEntidadCreada Producto p){
        for(TallaSerieTallaje tallaSerieTallaje:p.getSerieTallaje().getTallaSerieTallajeList()){
            ProductoTalla productoTalla=new ProductoTalla();
            Talla talla=tallaSerieTallaje.getTalla();
            productoTalla.setProducto(p);
            productoTalla.setTalla(talla);
            productoTallaFacade.createAndFlush(productoTalla);
            if(p.getProductoTallaList()==null){
                p.setProductoTallaList(new ArrayList<ProductoTalla>());
            }
            p.getProductoTallaList().add(productoTalla);
            eventoNuevoProductoTalla.fire(productoTalla);
        }
    }
}
